ヘッダーをスキップ
Oracle TimesTen Cache Connect to Oracle開発者および管理者ガイド
リリース7.0
E05172-01
  目次へ
目次
索引へ
索引

前へ
前へ
次へ
次へ
 

キャッシュ・グループのロードおよびリフレッシュ

Oracleデータをキャッシュ・グループにロードする方法については、『Oracle TimesTen In-Memory Database概要』のCache Connect to Oracleに関する章のキャッシュ・グループのレプリケートに関する説明を参照してください。

OracleからTimesTenにロードされる基本単位は、キャッシュ・インスタンスです。LOAD CACHE GROUPまたはREFRESH CACHE GROUP文のいずれかを使用すると、データをキャッシュ・グループにロードできます。次の相違はありますが、WHERE句が使用されているかどうかに関係なく、いずれのSQL文でもOracleからキャッシュ・グループにデータがコピーされます。

例4.27

インスタンスをOracleからWesternCustomersキャッシュ・グループにロードするには、次のように入力します。

LOAD CACHE GROUP WesternCustomers

    COMMIT EVERY 256 ROWS;

顧客のZIPコードが94022であるキャッシュ・グループ・インスタンスのみOracleからWesternCustomersキャッシュ・グループにロードするには、次のように入力します。

LOAD CACHE GROUP WesternCustomers

    WHERE (USER1.CUSTOMER.ZIP = 94022)

    COMMIT EVERY 256 ROWS;

WesternCustomersキャッシュ・グループ全体をOracle表からリフレッシュするには、次のように入力します。

REFRESH CACHE GROUP WesternCustomers

    COMMIT EVERY 256 ROWS;

注文品目2353に関連付けられているキャッシュ・グループ・インスタンスのみリフレッシュするには、次のように入力します。

REFRESH CACHE GROUP WesternCustomers

    WHERE (USER1.ORDERDETAILS.ITEMID = 2353)

    COMMIT EVERY 256 ROWS;

複数の表が含まれているキャッシュ・グループのロードおよびリフレッシュ

キャッシュ・グループに複数の表が含まれていて、Oracleがロードまたはリフレッシュ対象の表を現在更新している場合は、TimesTenの分離レベルをシリアライズ可能に設定してから、LOAD CACHE GROUPまたはREFRESH CACHE GROUP文を実行した方がよい場合があります。これによって、TimesTenはシリアライズ可能な方法でOracle表を問い合せ、ロードされたデータのトランザクション一貫性が保証されます。キャッシュ・グループをロードまたはリフレッシュした後、分離レベルをREAD_COMMITTEDに再設定して同時実行性を向上させることができます。

例4.28

ttIsqlセッション中、キャッシュ・グループをロードする前に分離レベルを再設定することができます。これは、キャッシュ・グループをロードまたはリフレッシュする場合、非ロギングモードに適用されます。

Command> isolation SERIALIZABLE;

Command> LOAD CACHE GROUP WesternCustomers

>COMMIT EVERY 1000 ROWS;

Command> isolation READ_COMMITTED;